typedef int ElementType;

typedef struct QueueRecord
{
	int Capacity;
	int Front;
	int Rear;
	int Size;
	ElementType *Array;
} Queue;

Queue* InitQueue(int MaxLength);
Queue* PushFront(ElementType element, Queue *queue);
ElementType PopFront(Queue *queue);
Queue* PushRear(ElementType element, Queue * queue);
ElementType PopRear(Queue * queue);
int IsFull(Queue* q);
int IsEmpty(Queue *q);

